package com.kaishengit.service;

import java.util.List;

import org.springframework.transaction.annotation.Transactional;

import com.kaishengit.dao.UserGroupDao;
import com.kaishengit.pojo.User;
import com.kaishengit.pojo.UserGroup;
import com.kaishengit.util.DateUtil;
@Transactional
public class UserGroupService {
	
	private UserGroupDao userGroupDao;
	
	public List<UserGroup> findAll() {
		return userGroupDao.findAll();
	}

	public UserGroupDao getUserGroupDao() {
		return userGroupDao;
	}

	public void setUserGroupDao(UserGroupDao userGroupDao) {
		this.userGroupDao = userGroupDao;
	}

	public UserGroup fingById(String id) {
		return userGroupDao.get(id);
	}

	public UserGroup findByGroupName(String update_grouptype) {
		return userGroupDao.findByUnique("groupname", update_grouptype);
	}

	public void adminNewGroup(UserGroup userGroup) {
		userGroup.setCreatetime(DateUtil.getNow());
		userGroupDao.save(userGroup);
	}

	public void adminUpdateGroup(UserGroup userGroup, String id) {
		userGroup.setId(id);
		userGroupDao.save(userGroup);
	}

	public void deleteGroup(UserGroup userGroup, String id) {
		if(userGroup.getUserSet().size() == 0) {
			userGroupDao.Del(id);
		}
	}

	public UserGroup findByUser(User user) {
		String hql = "select h from UserGroup as h where h.id=?";
		return userGroupDao.findUnique(hql, user.getUserGroup().getId());
	}


}
